SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO


-----------------------------------------------------------
-- Type: Stored Procedure
-- Name: SP_MOVI_NCONT_Q01
-----------------------------------------------------------



CREATE PROCEDURE [dbo].[SP_MOVI_NCONT_Q01]  
/*--------------------------------------------------------*/    
/*---Empresa               OFISIS S.A.                 --*/    
/*---PROVnte               OFISIS         --*/    
/*---Sistema               Tesoreria                   --*/    
/*---M©dulo                Empresa                     --*/    
/*---Programa              Movimientos No Migrados a Contabilidad  --*/    
/*---Script                SP_MOVI_NCONT_Q01.sql      --*/    
/*---Nombre SP             SP_MOVI_NCONT_Q01          --*/    
/*---Desarrollado por      Reynaldo Menacho Luyo       --*/    
/*---Fecha Creaci©n        15/03/2004                  --*/    
/*---Base Datos            SQL SERVER           --*/    
/*---Versi©n               2000                         --*/    
/*---Invoca a SP                                       --*/    
/*--------------------------------------------------------*/    
    
/*-------------------------------------------------------*/    
/*---Modificado 1 por     :   --*/    
/*---Fecha Modificaci«n   :   --*/     
/*---Detalle Modificaci«n :   --*/    
/*-------------------------------------------------------*/    
/*-------------------------------------------------------*/    
/*---Drop Proc SP_TMDOCP_PROV_Q31                      --*/    
/*---Grant Execute on SP_MOVI_NCONT_Q01 to public         --*/     
/*--- SP_MOVI_NCONT_Q01 '01', 2004, 1, 'S', 'S', 'S', 'S' --*/    
/*-------------------------------------------------------*/    
  
@ISCO_EMPR  TD_VC_002,  
@INNU_ANNO TD_IN_001,  
@INNU_MESE TD_IN_001,  
@ISST_CAJA TD_VC_001,    
@ISST_BANC TD_VC_001,  
@ISST_CXCB TD_VC_001,  
@ISST_CXPA TD_VC_001    

AS    
SET NOCOUNT  ON  
 CREATE TABLE #TWMOVI_NCONT_Q01_1  
 ( CO_CLAV      varchar(2) NULL,  
   CO_0001  varchar(20) NULL,  
   CO_0002  varchar(20) NULL,  
   CO_0003  varchar(20) NULL,  
   CO_0004  varchar(20) NULL,  
   CO_0005  varchar(20) NULL,  
   CO_0006  varchar(20) NULL,  
   CO_0007  varchar(20) NULL,  
   CO_TIPO_OPER varchar(3) NULL,  
   FE_OPER datetime NULL,  
   CO_MONE  varchar(3) NULL,  
   IM_TOTA  numeric(16,4) DEFAULT 0)  
  
 CREATE TABLE #TWMOVI_NCONT_Q01_2  
 ( CO_CLAV      varchar(2) NULL,  
   CO_0001  varchar(20) NULL,  
   CO_0002  varchar(20) NULL,  
   CO_0003  varchar(20) NULL,  
   CO_0004  varchar(20) NULL,  
   CO_0005  varchar(20) NULL,  
   CO_0006  varchar(20) NULL,  
   CO_0007  varchar(20) NULL,  
   CO_TIPO_OPER varchar(3) NULL,  
   FE_OPER datetime NULL,  
   CO_MONE  varchar(3) NULL,  
   IM_TOTA  numeric(16,4) DEFAULT 0)  
  
  
If @ISST_CAJA = 'S'   
Begin  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  Select '12', T1.CO_CAJA, NULL, T1.AA_CAJA, T1.MM_CAJA, T1.TI_MOVI, T1.NU_COMP_CAJA, '1',   
 T1.CO_TIPO_OPER, T1.FE_ANUL, T2.CO_MONE, (PatIndex(T1.TI_MOVI, 'E') - PatIndex(T1.TI_MOVI, 'I')) * T5.IM_MOVI  
  FROM  OFITESO..TTCAJA_ANUL T1, OFITESO..TCMOVI_CAJA T5, OFITESO..TMCAJA T2   
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND   YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND  T1.CO_TIPO_OPER != '998'   
  AND  T1.CO_TIPO_OPER != '999'   
  AND  T1.CO_EMPR = T5.CO_EMPR  
  AND  T1.CO_CAJA = T5.CO_CAJA  
  AND  T1.AA_CAJA = T5.AA_CAJA  
  AND  T1.MM_CAJA = T5.MM_CAJA  
  AND  T1.TI_MOVI = T5.TI_MOVI  
  AND  T1.NU_COMP_CAJA = T5.NU_COMP_CAJA  
  AND  T1.CO_EMPR = T2.CO_EMPR  
  AND  T1.CO_CAJA = T2.CO_CAJA  
  AND  (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                                    WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                                    And         T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT   '11',   T1.CO_CAJA, NULL, T1.AA_CAJA, T1.MM_CAJA, T1.TI_MOVI, T1.NU_COMP_CAJA, '1',   
 T1.CO_TIPO_OPER, T1.FE_OPER, T2.CO_MONE, (PatIndex(T1.TI_MOVI, 'I') - PatIndex(T1.TI_MOVI, 'E')) * T1.IM_MOVI  
  FROM  OFITESO..TCMOVI_CAJA T1, OFITESO..TMCAJA T2  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_OPER) = @INNU_MESE  
  AND   YEAR  (T1.FE_OPER) = @INNU_ANNO  
  AND  T1.CO_TIPO_OPER != '998'   
  AND  T1.CO_TIPO_OPER != '999'   
  AND  T1.TI_SITU != 'ANU'   
  AND  T1.CO_EMPR = T2.CO_EMPR  
  AND  T1.CO_CAJA = T2.CO_CAJA  
  and   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
End  
  
If @ISST_BANC = 'S'   
Begin  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '10', T1.CO_BANC, T1.NU_CNTA_BANC, T1.AA_BNCO, T1.MM_BNCO, T1.TI_MOVI_BANC, T1.NU_COMP_BANC, '2',  
 T1.CO_TIPO_OPER, T1.FE_ANUL, T2.CO_MONE, (PatIndex(T1.TI_MOVI_BANC, 'E') - PatIndex(T1.TI_MOVI_BANC, 'I')) * T5.IM_MOVI  
  FROM  OFITESO..TTBANC_ANUL T1, OFITESO..TCMOVI_BANC T5, OFITESO..TMCNTA_BANC T2  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND   YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND T1.CO_EMPR = T5.CO_EMPR  
  AND T1.CO_BANC = T5.CO_BANC  
  AND T1.NU_CNTA_BANC = T5.NU_CNTA_BANC  
  AND T1.AA_BNCO = T5.AA_BNCO  
  AND T1.MM_BNCO = T5.MM_BNCO  
  AND  T1.TI_MOVI_BANC = T5.TI_MOVI_BANC  
  AND  T1.NU_COMP_BANC = T5.NU_COMP_BANC  
  AND T1.CO_EMPR = T2.CO_EMPR  
  AND T1.CO_BANC = T2.CO_BANC  
  AND T1.NU_CNTA_BANC = T2.NU_CNTA_BANC  
  AND  T1.CO_TIPO_OPER != '998'   
  AND  T1.CO_TIPO_OPER != '999'   
  And  (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                           WHERE T1.CO_EMPR = T2.CO_EMPR  
                                           And T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT  '9',  T1.CO_BANC, T1.NU_CNTA_BANC, T1.AA_BNCO, T1.MM_BNCO, T1.TI_MOVI_BANC, T1.NU_COMP_BANC,  '2',  
 T1.CO_TIPO_OPER, T1.FE_OPER, T2.CO_MONE, (PatIndex(T1.TI_MOVI_BANC, 'I') - PatIndex(T1.TI_MOVI_BANC, 'E')) * T1.IM_MOVI  
  FROM  OFITESO..TCMOVI_BANC T1, OFITESO..TMCNTA_BANC T2  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_OPER) = @INNU_MESE  
  AND   YEAR  (T1.FE_OPER) = @INNU_ANNO  
  AND  T1.CO_TIPO_OPER != '998'   
  AND  T1.CO_TIPO_OPER != '999'   
  AND  T1.TI_SITU != 'ANU'   
  AND T1.CO_EMPR = T2.CO_EMPR  
  AND T1.CO_BANC = T2.CO_BANC  
  AND T1.NU_CNTA_BANC = T2.NU_CNTA_BANC  
  And  (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                 WHERE T1.CO_EMPR = T2.CO_EMPR  
                                 And T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  
End  
  
  
If @ISST_CXCB = 'S'   
Begin  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '32', T1.NU_AMAR, NULL,NULL,NULL,NULL,NULL, '3',  
 Max(T2.CO_TIPO_OPER), T1.FE_AMAR, Max(T3.CO_MONE), Sum(T1.IM_DETA_NEGA)  
  FROM   OFITESO..TDAMAR_ANTC T1, OFITESO..TCAMAR_ANTC T2, OFITESO..TMCNTA_BANC T3  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    T1.CO_EMPR = T2.CO_EMPR  
  AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND    T1.NU_AMAR = T2.NU_AMAR  
  AND    T1.FE_AMAR = T2.FE_AMAR  
  AND    T2.CO_TIPO_OPER != '998'  
  AND    T2.CO_TIPO_OPER != '999'  
  AND    T2.TI_SITU != 'ANU'  
  AND    T2.CO_BANC IS NOT NULL  
  AND    T2.CO_EMPR = T3.CO_EMPR  
  AND    T2.CO_BANC = T3.CO_BANC  
  AND    T2.NU_CNTA_BANC = T3.NU_CNTA_BANC  
  And   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT T2.CO_EMPR FROM OFITESO..TDTIPO_OPER T2, OFITESO..TCAMAR_ANTC T4  
                                          WHERE  T4.CO_EMPR = T1.CO_EMPR  
                                          And    T4.NU_AMAR = T1.NU_AMAR  
                      And    T2.CO_EMPR = T4.CO_EMPR  
                                          And    T2.CO_TIPO_OPER = T4.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_AMAR, T1.FE_AMAR  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '33', T1.NU_AMAR, NULL,NULL,NULL,NULL,NULL , '3',  
 Max(T1.CO_TIPO_OPER), T1.FE_AMAR, Max(T3.CO_MONE), Sum(T2.IM_DETA_NEGA)  
  FROM   OFITESO..TTAMAR_ANTA T1, OFITESO..TDAMAR_ANTC T2, OFITESO..TCAMAR_ANTC T5, OFITESO..TMCNTA_BANC T3  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND    YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
  AND    T1.CO_EMPR = T5.CO_EMPR  
  AND    T1.CO_UNID_CONC = T5.CO_UNID_CONC  
  AND    T1.NU_AMAR = T5.NU_AMAR  
  AND    T1.FE_AMAR = T5.FE_AMAR  
  AND    T1.CO_EMPR = T2.CO_EMPR  
  AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND    T1.NU_AMAR = T2.NU_AMAR  
  AND    T1.FE_AMAR = T2.FE_AMAR  
  AND    T5.CO_BANC IS NOT NULL  
  AND    T5.CO_EMPR = T3.CO_EMPR  
  AND    T5.CO_BANC = T3.CO_BANC  
  AND    T5.NU_CNTA_BANC = T3.NU_CNTA_BANC  
  And    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT T2.CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                          WHERE  T2.CO_EMPR = T1.CO_EMPR  
                                          And    T2.CO_TIPO_OPER = T1.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_AMAR, T1.FE_AMAR  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '31', T1.CO_CLIE, T1.CO_TIPO_DOCU, T1.NU_DOCU_CLIE, NULL,NULL,NULL, '3',  
 Max(T1.CO_TIPO_OPER), Max(T2.FE_EMIS), Max(T2.CO_MONE), Sum(T2.IM_TOTA)  
  FROM   OFITESO..TTDOCC_ANUL T1, OFITESO..TMDOCU_CLIE T2  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND    YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
  AND    T1.CO_EMPR = T2.CO_EMPR  
  AND    T1.CO_CLIE = T2.CO_CLIE  
  AND    T1.CO_TIPO_DOCU = T2.CO_TIPO_DOCU  
  AND    T1.NU_DOCU_CLIE = T2.NU_DOCU_CLIE  
  And    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_CLIE, T1.CO_TIPO_DOCU, T1.NU_DOCU_CLIE  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '29',  T1.CO_CLIE, T1.CO_TIPO_DOCU, T1.NU_DOCU_CLIE, NULL,NULL,NULL, '3',  
 Max(T1.CO_TIPO_OPER), Max(T1.FE_EMIS), Max(T1.CO_MONE), Sum(T1.IM_TOTA)  
  FROM  OFITESO..TMDOCU_CLIE T1  
  WHERE T1.CO_EMPR =  @ISCO_EMPR  
  AND  MONTH (T1.FE_EMIS) =  @INNU_MESE  
  AND  YEAR  (T1.FE_EMIS) = @INNU_ANNO  
  AND  T1.CO_TIPO_OPER != '998'  
  AND  T1.CO_TIPO_OPER != '999'  
  AND  T1.CO_ESTA_DOCU != 'ANU'  
  and  (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_CLIE, T1.CO_TIPO_DOCU, T1.NU_DOCU_CLIE  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '25', T1.CO_CLIE, T1.NU_RENO , NULL,NULL,NULL,NULL, '3',  
 Max(T1.CO_TIPO_OPER), T1.FE_RENO, Max(T1.CO_MONE), Sum( (PatIndex(T3.ST_SIGN, 'S') - PatIndex(T3.ST_SIGN, 'N')) * T2.IM_RENO_MREN)  
  FROM  OFITESO..TCRENO_CLIE T1, OFITESO..TDRENO_CLIE T2, OFITESO..TTDOCU_CNTB T3  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_RENO) = @INNU_MESE  
  AND   YEAR  (T1.FE_RENO) = @INNU_ANNO  
  AND   T1.CO_TIPO_OPER != '998'  
  AND   T1.CO_TIPO_OPER != '999'  
  AND   T1.TI_SITU != 'ANU'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.CO_CLIE = T2.CO_CLIE  
  AND   T1.NU_RENO = T2.NU_RENO  
  AND   T1.FE_RENO = T2.FE_RENO  
  AND   T2.CO_TIPO_DOCU = T3.TI_DOCU  
  And   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.CO_CLIE, T1.NU_RENO, T1.FE_RENO  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '26',    T1.CO_CLIE, T1.NU_RENO , NULL,NULL,NULL,NULL, '3',  
 Max(T1.CO_TIPO_OPER), Max(T1.FE_ANUL), Max(T2.CO_MONE), Sum( (PatIndex(T4.ST_SIGN, 'S') - PatIndex(T4.ST_SIGN, 'N')) * T3.IM_RENO_MREN)  
  FROM  OFITESO..TTRENC_ANUL T1, OFITESO..TCRENO_CLIE T2, OFITESO..TDRENO_CLIE T3, OFITESO..TTDOCU_CNTB T4  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND    YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
  AND    T1.CO_EMPR = T2.CO_EMPR  
  AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND    T1.CO_CLIE = T2.CO_CLIE  
  AND    T1.NU_RENO = T2.NU_RENO  
  AND    T1.FE_RENO = T2.FE_RENO  
  AND    T2.CO_EMPR = T3.CO_EMPR  
  AND    T2.CO_UNID_CONC = T3.CO_UNID_CONC  
  AND    T2.CO_CLIE = T3.CO_CLIE  
  AND    T2.NU_RENO = T3.NU_RENO  
  AND    T2.FE_RENO = T3.FE_RENO  
  AND    T3.CO_TIPO_DOCU = T4.TI_DOCU  
  And   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                                   WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                                   And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.CO_CLIE, T1.NU_RENO, T1.FE_RENO  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '19',    T1.CO_CLIE, T1.NU_CANJ, NULL,NULL,NULL,NULL, '3',  
 Max(T1.CO_TIPO_OPER), T1.FE_CANJ, Max(T1.CO_MONE), Sum( (PatIndex(T3.ST_SIGN, 'S') - PatIndex(T3.ST_SIGN, 'N')) * T2.IM_CANJ_MCAN)  
  FROM  OFITESO..TCCANJ_CLIE T1, OFITESO..TDCANJ_CLIE T2, OFITESO..TTDOCU_CNTB T3  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_CANJ) = @INNU_MESE  
  AND   YEAR  (T1.FE_CANJ) = @INNU_ANNO  
  AND   T1.CO_TIPO_OPER != '998'  
  AND   T1.CO_TIPO_OPER != '999'  
  AND   T1.TI_SITU != 'ANU'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.CO_CLIE = T2.CO_CLIE  
  AND   T1.NU_CANJ = T2.NU_CANJ  
  AND   T1.FE_CANJ = T2.FE_CANJ  
  AND   T2.CO_TIPO_DOCU = T3.TI_DOCU  
  and   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.CO_CLIE, T1.NU_CANJ, T1.FE_CANJ  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '20',   T1.CO_CLIE, T1.NU_CANJ, NULL,NULL,NULL,NULL, '3',  
 Max(T1.CO_TIPO_OPER), Max(T1.FE_ANUL), Max(T2.CO_MONE), Sum( (PatIndex(T4.ST_SIGN, 'S') - PatIndex(T4.ST_SIGN, 'N')) * T3.IM_CANJ_MCAN)  
  FROM   OFITESO..TTCANC_ANUL T1, OFITESO..TCCANJ_CLIE T2, OFITESO..TDCANJ_CLIE T3, OFITESO..TTDOCU_CNTB T4  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND    YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
  AND    T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC    AND    T1.CO_CLIE = T2.CO_CLIE  
  AND    T1.NU_CANJ = T2.NU_CANJ  
  AND    T1.FE_CANJ = T2.FE_CANJ  
  AND    T2.CO_EMPR = T3.CO_EMPR  
  AND    T2.CO_UNID_CONC = T3.CO_UNID_CONC  
  AND    T2.CO_CLIE = T3.CO_CLIE  
  AND    T2.NU_CANJ = T3.NU_CANJ  
  AND    T2.FE_CANJ = T3.FE_CANJ  
  AND    T3.CO_TIPO_DOCU = T4.TI_DOCU  
  And    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.CO_CLIE, T1.NU_CANJ, T1.FE_CANJ  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '21',    T1.NU_AMAR, NULL,NULL,NULL,NULL,NULL, '3',  
 Max(T1.CO_TIPO_OPER), T1.FE_AMAR, Max(T1.CO_MONE), Sum(T2.IM_COBR_ORIG)  
  FROM   OFITESO..TCAMAR_NCCL T1, OFITESO..TDAMAR_NCCL T2, OFITESO..TTDOCU_CNTB T3  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_AMAR) = @INNU_MESE  
  AND    YEAR  (T1.FE_AMAR) = @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
  AND    T1.TI_SITU != 'ANU'  
  AND    T1.CO_EMPR = T2.CO_EMPR  
  AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND    T1.NU_AMAR = T2.NU_AMAR  
  AND    T1.FE_AMAR = T2.FE_AMAR  
  AND    T2.CO_TIDO_ORIG IS NOT NULL  
  AND    T2.CO_TIDO_ORIG = T3.TI_DOCU  
  And    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_AMAR, T1.FE_AMAR  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '22',   T1.NU_AMAR , NULL,NULL,NULL,NULL,NULL, '3',  
 Max(T1.CO_TIPO_OPER), Max(T1.FE_ANUL), Max(T2.CO_MONE), Sum(T3.IM_COBR_ORIG)  
  FROM   OFITESO..TTAMAR_NCCA T1, OFITESO..TCAMAR_NCCL T2, OFITESO..TDAMAR_NCCL T3, OFITESO..TTDOCU_CNTB T4  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND    YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
  AND    T1.CO_EMPR = T2.CO_EMPR  
  AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND    T1.NU_AMAR = T2.NU_AMAR  
  AND    T1.FE_AMAR = T2.FE_AMAR  
  AND    T2.CO_EMPR = T3.CO_EMPR  
  AND    T2.CO_UNID_CONC = T3.CO_UNID_CONC  
  AND    T2.NU_AMAR = T3.NU_AMAR  
  AND    T2.FE_AMAR = T3.FE_AMAR  
  AND    T3.CO_TIDO_ORIG IS NOT NULL  
  AND    T3.CO_TIDO_ORIG = T4.TI_DOCU  
  And    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_AMAR, T1.FE_AMAR  
  
  
  Insert Into #TWMOVI_NCONT_Q01_2(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '34',    T1.NU_CORR_MODI, NULL , NULL,NULL,NULL,NULL, '3',  
 T1.CO_TIPO_OPER, T1.FE_MODI, 'SOL', (Select (OFITESO.Dbo.FN_TCFACT_CAMB_Q02 (T2.CO_MONE,   
 'SOL', T2.FE_EMIS, T2.IM_TOTA, 'V', 'O', 'S', 'SOL', 'DOL', T2.FA_TIPO_CAMB)))  
  FROM  OFITESO..TDMODI_DOCU T1, OFITESO..TMLETR_CLIE T2  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_MODI) =  @INNU_MESE  
  AND   YEAR  (T1.FE_MODI) = @INNU_ANNO  
  AND   T1.CO_TIPO_OPER != '998'  
  AND   T1.CO_TIPO_OPER != '999'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_CLIE = T2.CO_CLIE  
  AND   T1.CO_TIPO_DOCU = 'LET'  
  AND   T1.NU_DOCU_CLIE = T2.NU_LETR_CLIE  
  And   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
            And   T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  
  
  Insert Into #TWMOVI_NCONT_Q01_2(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '34',    T1.NU_CORR_MODI, NULL , NULL,NULL,NULL,NULL, '3',  
 T1.CO_TIPO_OPER, T1.FE_MODI, 'SOL', (Select (OFITESO.Dbo.FN_TCFACT_CAMB_Q02 (T2.CO_MONE,   
 'SOL', T2.FE_EMIS, T2.IM_TOTA, 'V', 'O', 'S', 'SOL', 'DOL', T2.FA_TIPO_CAMB)))  
  FROM  OFITESO..TDMODI_DOCU T1, OFITESO..TMDOCU_CLIE T2, OFITESO..TTDOCU_CNTB T3  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_MODI) =  @INNU_MESE  
  AND   YEAR  (T1.FE_MODI) = @INNU_ANNO  
  AND   T1.CO_TIPO_OPER != '998'  
  AND   T1.CO_TIPO_OPER != '999'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_CLIE = T2.CO_CLIE  
  AND   T1.CO_TIPO_DOCU = T2.CO_TIPO_DOCU  
  AND   T1.NU_DOCU_CLIE = T2.NU_DOCU_CLIE  
  AND   T2.CO_TIPO_DOCU = T3.TI_DOCU  
  And   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  
  
  Insert Into #TWMOVI_NCONT_Q01_2(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '21',    T1.NU_AMAR, NULL,NULL,NULL,NULL,NULL, '3',  
 T1.CO_TIPO_OPER, T1.FE_AMAR, 'SOL', (Select (OFITESO.Dbo.FN_TCFACT_CAMB_Q02 (T2.CO_MONE_LETR,   
 'SOL', T1.FE_AMAR, T2.IM_LETR, 'V', 'O', 'S', 'SOL', 'DOL', T1.FA_TIPO_CAMB)))  
  FROM  OFITESO..TCANTC_LETR T1, OFITESO..TDANTC_LETR T2  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_AMAR) = @INNU_MESE  
  AND   YEAR  (T1.FE_AMAR) = @INNU_ANNO  
  AND   T1.CO_TIPO_OPER != '998'  
  AND   T1.CO_TIPO_OPER != '999'  
  AND   T1.TI_SITU != 'ANU'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.NU_AMAR = T2.NU_AMAR  
  AND   T1.FE_AMAR = T2.FE_AMAR  
  and   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  
  
  Insert Into #TWMOVI_NCONT_Q01_2(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '22',   T1.NU_AMAR , NULL,NULL,NULL,NULL,NULL, '3',  
 T1.CO_TIPO_OPER, T1.FE_ANUL, 'SOL', (Select (OFITESO.Dbo.FN_TCFACT_CAMB_Q02 (T3.CO_MONE_LETR,   
 'SOL', T2.FE_AMAR, T3.IM_LETR, 'V', 'O', 'S', 'SOL', 'DOL', T2.FA_TIPO_CAMB)))  
  FROM  OFITESO..TTANTC_ANUL  T1, OFITESO..TCANTC_LETR T2, OFITESO..TDANTC_LETR T3  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND   YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND   T1.CO_TIPO_OPER != '998'  
  AND   T1.CO_TIPO_OPER != '999'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.NU_AMAR = T2.NU_AMAR  
  AND   T1.FE_AMAR = T2.FE_AMAR  
  AND   T2.CO_EMPR = T3.CO_EMPR  
  AND   T2.CO_UNID_CONC = T3.CO_UNID_CONC  
  AND   T2.NU_AMAR = T3.NU_AMAR  
  AND   T2.FE_AMAR = T3.FE_AMAR  
  And   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  Select CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 Max(CO_TIPO_OPER), FE_OPER, CO_MONE, Isnull(Sum(Isnull(IM_TOTA, 0)), 0)  
  From #TWMOVI_NCONT_Q01_2  
  Group By CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 FE_OPER, CO_MONE  
End  
  
  
If @ISST_CXPA = 'S'  
Begin  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '27', T1.NU_AMAR, NULL,NULL,NULL,NULL,NULL, '4',  
 Max(T1.CO_TIPO_OPER), T1.FE_AMAR, Max(T1.CO_MONE), Sum(T2.IM_PAGO_CORI)  
  FROM    OFITESO..TCAMAR_OCPR T1, OFITESO..TDAMAR_OCPR T2, OFITESO..TTDOCU_CNTB T3  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_AMAR) = @INNU_MESE  
  AND    YEAR  (T1.FE_AMAR) = @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
  AND    T1.TI_SITU != 'ANU'  
  AND    T1.CO_EMPR = T2.CO_EMPR  
  AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND    T1.NU_AMAR = T2.NU_AMAR  
  AND    T1.FE_AMAR = T2.FE_AMAR  
  AND    T2.CO_TIDO_ORIG IS NOT NULL  
  AND    T2.CO_TIDO_ORIG = T3.TI_DOCU  
  And    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_AMAR, T1.FE_AMAR  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '28', T1.NU_AMAR, NULL,NULL,NULL,NULL,NULL , '4',  
 Max(T1.CO_TIPO_OPER), T1.FE_AMAR, Max(T2.CO_MONE), Sum(T3.IM_PAGO_CORI)  
  FROM  OFITESO..TTAMAR_OPAN T1, OFITESO..TCAMAR_OCPR T2, OFITESO..TDAMAR_OCPR T3, OFITESO..TTDOCU_CNTB T4  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND   YEAR  (T1.FE_ANUL) =  @INNU_ANNO  
  AND   T1.CO_TIPO_OPER != '998'  
  AND   T1.CO_TIPO_OPER != '999'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.NU_AMAR = T2.NU_AMAR  
  AND   T1.FE_AMAR = T2.FE_AMAR  
  AND   T2.CO_EMPR = T3.CO_EMPR  
  AND   T2.CO_UNID_CONC = T3.CO_UNID_CONC  
  AND   T2.NU_AMAR = T3.NU_AMAR  
  AND   T2.FE_AMAR = T3.FE_AMAR  
  AND   T3.CO_TIDO_ORIG IS NOT NULL  
  AND   T3.CO_TIDO_ORIG = T4.TI_DOCU  
  And   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_AMAR, T1.FE_AMAR  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '23', T1.CO_PROV, T1.NU_RENO, NULL,NULL,NULL,NULL, '4',  
 Max(T1.CO_TIPO_OPER), T1.FE_RENO, Max(T1.CO_MONE), Sum( (PatIndex(T3.ST_SIGN, 'S') - PatIndex(T3.ST_SIGN, 'N')) * T2.IM_RENO_MREN)  
  FROM   OFITESO..TCRENO_PROV T1, OFITESO..TDRENO_PROV T2, OFITESO..TTDOCU_CNTB T3  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_RENO) = @INNU_MESE  
  AND   YEAR  (T1.FE_RENO) = @INNU_ANNO  
  AND   T1.CO_TIPO_OPER != '998'  
  AND   T1.CO_TIPO_OPER != '999'  
  AND   T1.TI_SITU != 'ANU'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.CO_PROV = T2.CO_PROV  
  AND   T1.NU_RENO = T2.NU_RENO  
  AND   T1.FE_RENO = T2.FE_RENO  
  AND   T2.CO_TIPO_DOCU = T3.TI_DOCU  
  And    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.CO_PROV, T1.NU_RENO, T1.FE_RENO  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '24', T1.CO_PROV, T1.NU_RENO, NULL,NULL,NULL,NULL, '4',  
 Max(T1.CO_TIPO_OPER), Max(T1.FE_ANUL), Max(T2.CO_MONE), Sum( (PatIndex(T4.ST_SIGN, 'S') - PatIndex(T4.ST_SIGN, 'N')) * T3.IM_RENO_MREN)  
  FROM   OFITESO..TTRENP_ANUL T1, OFITESO..TCRENO_PROV T2, OFITESO..TDRENO_PROV T3, OFITESO..TTDOCU_CNTB T4  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND    YEAR  (T1.FE_ANUL) =  @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.CO_PROV = T2.CO_PROV  
  AND   T1.NU_RENO = T2.NU_RENO  
  AND   T1.FE_RENO = T2.FE_RENO  
  AND   T2.CO_EMPR = T3.CO_EMPR  
  AND   T2.CO_UNID_CONC = T3.CO_UNID_CONC  
  AND   T2.CO_PROV = T3.CO_PROV  
  AND   T2.NU_RENO = T3.NU_RENO  
  AND   T2.FE_RENO = T3.FE_RENO  
  AND   T3.CO_TIPO_DOCU = T4.TI_DOCU  
  And    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.CO_PROV, T1.NU_RENO, T1.FE_RENO  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '16', T1.CO_PROV, T1.NU_CANJ, NULL,NULL,NULL,NULL, '4',  
 Max(T1.CO_TIPO_OPER), Max(T1.FE_ANUL), Max(T2.CO_MONE), Sum( (PatIndex(T4.ST_SIGN, 'S') - PatIndex(T4.ST_SIGN, 'N')) * T3.IM_CANJ_MCAN)  
  FROM   OFITESO..TTCANP_ANUL T1, OFITESO..TCCANJ_PROV T2, OFITESO..TDCANJ_PROV T3, OFITESO..TTDOCU_CNTB T4  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND    YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
  AND    T1.CO_EMPR = T2.CO_EMPR  
  AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND    T1.CO_PROV = T2.CO_PROV  
  AND    T1.NU_CANJ = T2.NU_CANJ  
  AND    T1.FE_CANJ = T2.FE_CANJ  
  AND    T2.CO_EMPR = T3.CO_EMPR  
  AND    T2.CO_UNID_CONC = T3.CO_UNID_CONC  
  AND    T2.CO_PROV = T3.CO_PROV  
  AND    T2.NU_CANJ = T3.NU_CANJ  
  AND    T2.FE_CANJ = T3.FE_CANJ  
  AND    T3.CO_TIPO_DOCU = T4.TI_DOCU  
  And    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.CO_PROV, T1.NU_CANJ, T1.FE_CANJ  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '15',   T1.CO_PROV, T1.NU_CANJ, NULL,NULL,NULL,NULL, '4',  
 Max(T1.CO_TIPO_OPER), T1.FE_CANJ, Max(T1.CO_MONE), Sum( (PatIndex(T3.ST_SIGN, 'S') - PatIndex(T3.ST_SIGN, 'N')) * T2.IM_CANJ_MCAN)  
  FROM   OFITESO..TCCANJ_PROV T1, OFITESO..TDCANJ_PROV T2, OFITESO..TTDOCU_CNTB T3  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_CANJ) = @INNU_MESE  
  AND   YEAR  (T1.FE_CANJ) = @INNU_ANNO  
  AND   T1.CO_TIPO_OPER != '998'  
  AND   T1.CO_TIPO_OPER != '999'  
  AND   T1.TI_SITU != 'ANU'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.CO_PROV = T2.CO_PROV  
  AND   T1.NU_CANJ = T2.NU_CANJ  
  AND   T1.FE_CANJ = T2.FE_CANJ  
  AND   T2.CO_TIPO_DOCU = T3.TI_DOCU  
  And   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.CO_PROV, T1.NU_CANJ, T1.FE_CANJ  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '18', T1.NU_AMAR , NULL,NULL,NULL,NULL,NULL, '4',  
 Max(T1.CO_TIPO_OPER), Max(T1.FE_ANUL), Max(T2.CO_MONE), Sum(T3.IM_PAGO_ORIG)  
  FROM   OFITESO..TTAMAR_NCPA T1, OFITESO..TCAMAR_NCPR T2, OFITESO..TDAMAR_NCPR T3, OFITESO..TTDOCU_CNTB T4  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND    YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
 AND  T1.CO_EMPR = T2.CO_EMPR  
  AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND    T1.NU_AMAR = T2.NU_AMAR  
  AND    T1.FE_AMAR = T2.FE_AMAR  
  AND    T2.CO_EMPR = T3.CO_EMPR  
  AND    T2.CO_UNID_CONC = T3.CO_UNID_CONC  
  AND    T2.NU_AMAR = T3.NU_AMAR  
  AND    T2.FE_AMAR = T3.FE_AMAR  
  AND    T3.CO_TIDO_ORIG IS NOT NULL  
  AND    T3.CO_TIDO_ORIG = T4.TI_DOCU  
  and    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
          And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_AMAR, T1.FE_AMAR  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '17', T1.NU_AMAR , NULL,NULL,NULL,NULL,NULL, '4',  
 Max(T1.CO_TIPO_OPER), Max(T1.FE_AMAR), Max(T1.CO_MONE), Sum(T2.IM_PAGO_ORIG)  
  FROM   OFITESO..TCAMAR_NCPR T1, OFITESO..TDAMAR_NCPR T2, OFITESO..TTDOCU_CNTB T3  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_AMAR) = @INNU_MESE  
  AND    YEAR  (T1.FE_AMAR) = @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
  AND    T1.TI_SITU != 'ANU'  
  AND    T1.CO_EMPR = T2.CO_EMPR  
  AND    T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND    T1.NU_AMAR = T2.NU_AMAR  
  AND    T1.FE_AMAR = T2.FE_AMAR  
  AND    T2.CO_TIDO_ORIG IS NOT NULL  
  AND    T2.CO_TIDO_ORIG = T3.TI_DOCU  
  And    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_AMAR, T1.FE_AMAR  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '3', T1.CO_PROV, T1.CO_TIPO_DOCU, T1.NU_DOCU_PROV , NULL,NULL,NULL, '4',  
 Max(T1.CO_TIPO_OPER), Max(T1.FE_REGI_COMP), Max(T1.CO_MONE), Sum(T1.IM_TOTA)  
  FROM  OFITESO..TMDOCU_PROV T1  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_REGI_COMP) = @INNU_MESE  
  AND   YEAR  (T1.FE_REGI_COMP) = @INNU_ANNO  
  AND   T1.CO_TIPO_OPER != '998'  
  AND   T1.CO_TIPO_OPER != '999'  
  AND   T1.CO_ESTA_DOCU != 'ANU'  
  And   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_PROV, T1.CO_TIPO_DOCU, T1.NU_DOCU_PROV  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '5',   T1.CO_PROV, T1.CO_TIPO_DOCU, T1.NU_DOCU_PROV, NULL,NULL,NULL, '4',  
 Max(T1.CO_TIPO_OPER), Max(T1.FE_ANUL), Max(T2.CO_MONE), Sum(T2.IM_TOTA)  
  FROM   OFITESO..TTDOCP_ANUL T1, OFITESO..TMDOCU_PROV T2  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND    YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND    T1.CO_TIPO_OPER != '998'  
  AND    T1.CO_TIPO_OPER != '999'  
  AND    T1.CO_EMPR = T2.CO_EMPR  
  AND    T1.CO_PROV = T2.CO_PROV  
  AND    T1.CO_TIPO_DOCU = T2.CO_TIPO_DOCU  
  AND    T1.NU_DOCU_PROV = T2.NU_DOCU_PROV  
  And    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT CO_EMPR FROM OFITESO..TDTIPO_OPER T2  
                                       WHERE  T1.CO_EMPR = T2.CO_EMPR  
                                       And    T1.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_PROV, T1.CO_TIPO_DOCU, T1.NU_DOCU_PROV  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '1', T1.NU_REND_GAST, NULL,NULL,NULL,NULL,NULL, '4',  
 Max(T2.CO_TIPO_OPER), T1.FE_REND_GAST, Max(T3.CO_MONE), SUM(T2.IM_CONV)   
FROM  OFITESO..TCREND_GAST T1, OFITESO..TDREND_GAST T2, OFITESO..TMCNTA_BANC T3  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_REND_GAST) = @INNU_MESE  
  AND   YEAR  (T1.FE_REND_GAST) = @INNU_ANNO  
  AND   T1.TI_SITU != 'ANU'  
  AND   T2.CO_TIPO_OPER != '998'  
  AND   T2.CO_TIPO_OPER != '999'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.NU_REND_GAST = T2.NU_REND_GAST  
  AND   T1.FE_REND_GAST = T2.FE_REND_GAST  
  AND   T1.CO_BANC_DEST IS NOT NULL  
  AND   T1.CO_EMPR_DEST = T3.CO_EMPR  
  AND   T1.CO_BANC_DEST = T3.CO_BANC  
  AND   T1.NU_CNTA_DEST = T3.NU_CNTA_BANC  
  And   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT T2.CO_EMPR FROM OFITESO..TDTIPO_OPER T2, OFITESO..TDREND_GAST T3  
                                        WHERE  T1.CO_EMPR = T3.CO_EMPR  
                                        AND    T1.NU_REND_GAST = T3.NU_REND_GAST  
                                        AND    T3.CO_EMPR = T2.CO_EMPR  
                                        And    T3.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_REND_GAST, T1.FE_REND_GAST  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '1', T1.NU_REND_GAST, NULL,NULL,NULL,NULL,NULL, '4',  
 Max(T2.CO_TIPO_OPER), T1.FE_REND_GAST, Max(T3.CO_MONE), SUM(T2.IM_CONV)   
  FROM  OFITESO..TCREND_GAST T1, OFITESO..TDREND_GAST T2, OFITESO..TMCAJA T3  
  WHERE T1.CO_EMPR = @ISCO_EMPR  
  AND   MONTH (T1.FE_REND_GAST) = @INNU_MESE  
  AND   YEAR  (T1.FE_REND_GAST) = @INNU_ANNO  
  AND   T1.TI_SITU != 'ANU'  
  AND   T2.CO_TIPO_OPER != '998'  
  AND   T2.CO_TIPO_OPER != '999'  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.NU_REND_GAST = T2.NU_REND_GAST  
  AND   T1.FE_REND_GAST = T2.FE_REND_GAST  
  AND   T1.CO_CAJA_DEST IS NOT NULL  
  AND   T1.CO_EMPR_DEST = T3.CO_EMPR  
  AND   T1.CO_CAJA_DEST = T3.CO_CAJA  
  And   (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT T2.CO_EMPR FROM OFITESO..TDTIPO_OPER T2, OFITESO..TDREND_GAST T3  
                                        WHERE  T1.CO_EMPR = T3.CO_EMPR  
                                        AND    T1.NU_REND_GAST = T3.NU_REND_GAST  
                                        AND    T3.CO_EMPR = T2.CO_EMPR  
                                        And    T3.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_REND_GAST, T1.FE_REND_GAST  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '2', T1.NU_REND_GAST , NULL,NULL,NULL,NULL,NULL, '4',  
 Max(T3.CO_TIPO_OPER), Max(T1.FE_ANUL), Max(T4.CO_MONE), SUM(T3.IM_CONV)   
  FROM   OFITESO..TCREND_ANUL T1, OFITESO..TCREND_GAST T2, OFITESO..TDREND_GAST T3, OFITESO..TMCNTA_BANC T4  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND    YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.NU_REND_GAST = T2.NU_REND_GAST  
  AND   T1.FE_REND_GAST = T2.FE_REND_GAST  
  AND   T2.CO_EMPR = T3.CO_EMPR  
  AND   T2.CO_UNID_CONC = T3.CO_UNID_CONC  
  AND   T2.NU_REND_GAST = T3.NU_REND_GAST  
  AND   T2.FE_REND_GAST = T3.FE_REND_GAST  
  AND   T2.CO_BANC_DEST IS NOT NULL  
  AND   T2.CO_EMPR_DEST = T4.CO_EMPR  
  AND   T2.CO_BANC_DEST = T4.CO_BANC  
  AND   T2.NU_CNTA_DEST = T4.NU_CNTA_BANC  
  and    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT T2.CO_EMPR FROM OFITESO..TDTIPO_OPER T2, OFITESO..TDREND_GAST T3  
                                        WHERE  T1.CO_EMPR = T3.CO_EMPR  
                                        AND    T1.NU_REND_GAST = T3.NU_REND_GAST  
                                        AND    T3.CO_EMPR = T2.CO_EMPR  
                                        And    T3.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_REND_GAST, T1.FE_REND_GAST  
  
  
  Insert Into #TWMOVI_NCONT_Q01_1(CO_CLAV, CO_0001, CO_0002, CO_0003, CO_0004, CO_0005, CO_0006, CO_0007,   
 CO_TIPO_OPER, FE_OPER, CO_MONE, IM_TOTA)  
  SELECT '2', T1.NU_REND_GAST , NULL,NULL,NULL,NULL,NULL, '4',  
 Max(T3.CO_TIPO_OPER), Max(T1.FE_ANUL), Max(T4.CO_MONE), SUM(T3.IM_CONV)   
  FROM   OFITESO..TCREND_ANUL T1, OFITESO..TCREND_GAST T2, OFITESO..TDREND_GAST T3, OFITESO..TMCAJA T4  
  WHERE  T1.CO_EMPR = @ISCO_EMPR  
  AND    MONTH (T1.FE_ANUL) = @INNU_MESE  
  AND    YEAR  (T1.FE_ANUL) = @INNU_ANNO  
  AND   T1.CO_EMPR = T2.CO_EMPR  
  AND   T1.CO_UNID_CONC = T2.CO_UNID_CONC  
  AND   T1.NU_REND_GAST = T2.NU_REND_GAST  
  AND   T1.FE_REND_GAST = T2.FE_REND_GAST  
  AND   T2.CO_EMPR = T3.CO_EMPR  
  AND   T2.CO_UNID_CONC = T3.CO_UNID_CONC  
  AND   T2.NU_REND_GAST = T3.NU_REND_GAST  
  AND   T2.FE_REND_GAST = T3.FE_REND_GAST  
  AND   T2.CO_CAJA_DEST IS NOT NULL  
  AND   T2.CO_EMPR_DEST = T4.CO_EMPR  
  AND   T2.CO_CAJA_DEST = T4.CO_CAJA  
  and    (T1.ST_CONT = 'N' OR  ( NOT EXISTS (SELECT T2.CO_EMPR FROM OFITESO..TDTIPO_OPER T2, OFITESO..TDREND_GAST T3  
                                        WHERE  T1.CO_EMPR = T3.CO_EMPR  
                                        AND    T1.NU_REND_GAST = T3.NU_REND_GAST  
                  AND    T3.CO_EMPR = T2.CO_EMPR  
                                        And    T3.CO_TIPO_OPER = T2.CO_TIPO_OPER)) )  
  GROUP BY T1.CO_EMPR, T1.CO_UNID_CONC, T1.NU_REND_GAST, T1.FE_REND_GAST  
  
End  
  
  
  
Select T1.CO_CLAV, T1.CO_0001, T1.CO_0002, T1.CO_0003, T1.CO_0004, T1.CO_0005, T1.CO_0006, T1.CO_0007,   
 T1.CO_TIPO_OPER, Convert(Varchar(10), T1.FE_OPER, 103), T1.CO_MONE, T2.DE_MONE, T1.IM_TOTA  
From #TWMOVI_NCONT_Q01_1 T1, TTMONE T2  
Where T1.CO_MONE = T2.CO_MONE  
ORDER BY T1.CO_0007, T1.CO_CLAV, T1.CO_TIPO_OPER  
  
Return  
  
/*------------------------------------------- FIN ---------------------------------------------------------------*/
-----------------------------------------------------------
-- Type: Stored Procedure
-- Name: SP_TTDOCU_CNTB_Q01
-----------------------------------------------------------
GO
